﻿// using UnityEngine;
// using System.Collections;
// using System.Collections.Generic;
// using TTGame;
//
// /*
//  * SynInfoUploader
//  *
//  * 上传服务器数据。
//  *
//  * 隔一段时间上传一次。如果每次触发都上传，在放大招很多怪物掉血时，会卡卡卡卡卡卡。
//  *
//  *
//  * 依赖：
//  *
//  * ！不写重复代码！
//  * @author TTun
//  * @date 11/10/2017 5:05:53 PM
//  */
// namespace TTGameEngine {
//
// public class SynInfoUploader: MonoBehaviour {
//
//
//     List<BattleUploadInfoCommand> uploadCmdList = new List<BattleUploadInfoCommand>();
//
//     public static SynInfoUploader m_instance = new SynInfoUploader();
//     public float SendIntervalTime = 3f;
//     float t_sendIntervalTime = 0f;
//     public static SynInfoUploader Share() {
//         if(m_instance == null) {
//             SynInfoUploader uploader = GameLauncher.Self.AddLogicScript<SynInfoUploader>();
//             uploader.Init();
//         }
//         return m_instance;
//     }
//
//     void Awake() {
//         if(m_instance != null) {
//             enabled = false;
//             Destroy(this);
//             return;
//         }
//         m_instance = this;
//     }
//
//     public void Init() {
//         t_sendIntervalTime = SendIntervalTime;
//     }
//
//     public void UploadHpChange(string receiverGID, int currentHp, int maxHp, int changeHp, int reason, int reasonId, string casterGID, float buffTimes) {
//         uploadCmdList.Add(new BattleUploadInfoCommand().SetHPChange(
//                               receiverGID,
//                               currentHp,
//                               maxHp,
//                               changeHp,
//                               reason,
//                               reasonId,
//                               casterGID,
//                               buffTimes));
//     }
//
//     public void UploadBuffChange(string receiverGID, string casterGID, int buffId, float times) {
//         uploadCmdList.Add(new BattleUploadInfoCommand().SetBuffChange(
//                               receiverGID,
//                               casterGID,
//                               buffId,
//                               times
//                           ));
//     }
//
//     void Update() {
//         float dt = Time.deltaTime;
//         t_sendIntervalTime -= dt;
//         if(t_sendIntervalTime <= 0) {
//             UploadAllImm();
//             t_sendIntervalTime = SendIntervalTime;
//         }
//     }
//
//     public void UploadAllImm() {
//         for(int i = 0; i < uploadCmdList.Count; i++) {
//             uploadCmdList[i].send();
//         }
//         uploadCmdList.Clear();
//     }
// }
//
// }
